<?php
/**
 * DB_Interface
 * @filesource
 */
/**
 * Namespace
 */
namespace framework\library\interfaces;
/**
 * Dependencies
 */
/**
 * Provides Models with the necessary structure involved with using the
 * Mysql_DB and Mysql_Query_Builder Classes.
 * 
 * @author Randy Casburn <randy@plurious.com>
 * @copyright Copyright Plurious Software, all rights reserved
 * @license MIT
 * @license http://www.opensource.org/licenses/mit-license.html
 * @link http://plurious.com/framework/documentation/classes/Front.html
 * @version 2.1
 * @api
 */
interface DB_Interface {
    /**
     * SQL INSERT Abstraction
     * 
     * Passes query to PDO Abstraction Class Insert Method
     */
    public function insert($table, Array $data);
    /**
     * SQL SELECT Abstraction
     * 
     * Passes query to PDO Abstraction Class SELECT Method
     */
    public function select($table, Array $where, $limit=1000);
    /**
     * SQL DELETE Abstraction
     * 
     * Passes query to PDO Abstraction Class DELETE Method
     */
    public function delete($table, Array $where);
    /**
     * SQL UPDATE Abstraction
     * 
     * Passes query to PDO Abstraction Class UPDATE Method
     */
    public function update(Array $new_values, $table, Array $where);
    /**
     * Applies ORDER BY clause to SQL statements
     */
    public function setOrder($col = '', $dir='');


}

?>
